概述
                        
                            SView for Windos Control为OCX控件提供三维模型基本的浏览、模型属性操作、基本三维对象操作、动画播放等功能的实现接口,可实现基本的 三维模型展示功能,以便于用户个性化定制属于自己的产品。文档主要介绍了OCX控件提供的接口说明。SView for Windows Control控件集成说明的介绍请查看SView for Windows Control 集成说明文档。
                        
                        
                        接口列表
                        打开
                    打开文件
                    
                            方法
                        
                        void Open(SHORT viewID,BSTR fileUris)
                        
                            说明
                        
                        打开本地文件/打开网络文件
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| fileUris | 是 | 本地文件路径/网络文件路径多个文件用;;分割 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        本地文件路径示例 D:\\1.svl  打开D盘下的1.svl文件
						网络文件示例 http://192.168.75.1:8080/svlfiles/1.svl
                    打开远端文件
                    
                            方法
                        
                        VARIANT_BOOL DoActions(BSTR actions)
                        
                            说明
                        
                        打开远端模型文件,actions为JSON格式数据;
                        
                            参数
                        
						JSON格式数据示例如下:
                        
{"Version" : "1.0.1","SViewCommand" : {"Other" : {"userName" : "base64(域账号)","projectCode" : "项目编号"},"Action" : {"Operator" : "Add","Files" : [{"File": {"Name": "base64(文件路径)","Assemblys": [{"Assembly": {"Name": "*代表整个模型,base64(构件名称)代表构件名称"}}]}}]}}}
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| Version | 是 | 版本号 | 
| userName | 是 | 转为base64的域账号 | 
| Operator | 是 | 暂为Add | 
| File下的Name | 是 | 转为base64的文件路径 | 
| Assembly下的Name | 是 | *代表整个模型,或者转为base64的构件名称 | 
                            返回值
                        
                        True/False 打开成功/不成功
                        
                            备注
                        
                        无
                    显示配置
                    方法配置参数
                    
                            方法
                        
                        void SetConfig(BSTR configJson)
                        
                            说明
                        
                        直接调用方法,传递JSON格式数据,配置各项参数,JSON文件格式
                        
{
    "Common": [
        {
            "IsConRotate": "False",
            "ShowMode": "3"
        }
    ],
    "Render": [
        {
            "IsSimplityMode": "False",
            "DrawDataBufferType": "1",
            "RemoveSize": "5",
            "MeasureUnit": "0",
            "IsShowPMI": "True",
            "MsaaNum": "2",
            "GLES": "2",
            "BackgroundImagePath": ""
        }
    ],
    "Layout": [
        {
            "MainMenu": "False",
            "AssemblyTree": "True",
            "ModelView": "True",
            "ToolBar": "True"
        }
    ]
}
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| IsConRotate | 是 | 值:True/False:持续/不持续旋转(设置模型是否持续旋转,默认值为False) | 
| IsSimplityMode | 是 | 值:True/False:使用/不使用高性能 (设置是否使用高性能模式,默认值为False) | 
| DrawDataBufferType | 是 | 值: 0内存优先,1显存优先,2磁盘优先(设置存储模式,默认值为1) | 
| MeasureUnit | 是 | 值: 0无,1毫米,2厘米,3米,4英寸,5英尺(设置测量功能测量单位,默认值为0) | 
| IsUseLOD | 是 | 值:True/False:使用/不使用LOD(设置渲染模式,默认值为False) | 
| RemoveMode | 是 | 值: 0模型,1屏幕(设置小件剔除模式,以屏幕来剔除或以模型来剔除,默认值为1) | 
| IsMergeFace | 是 | 值: True/False:合并/不合并面(设置模型是否合并面,默认值为Fasle) | 
| RemoveSize | 是 | 值: 0~50之间int整数(设置小件剔除百分比,默认值为0) | 
| IsReadEdgeFlag | 是 | 值:True/False:使用/不使用边界线(设置是否显示模型的边界线,默认值为True) | 
| MsaaNum | 是 | 值: 0关闭,1表示X2倍,2表示X4倍,3表示X8倍(设置多重采样抗锯齿倍率,默认值为2) | 
| RemoveSize | 是 | 值: 0~50之间int整数 | 
| IsShowPMI | 是 | 值:True/False:显示/不显示PMI(设置模型是否显示批注、测量等信息,默认值为True) | 
| ShowMode | 是 | 值: 0无,1显示装配树,2显示视图(设置模型显示装配树、视图,默认值为0) | 
| GLES | 是 | 值: 1表示ES1,2表示ES2(设置GLES模式,默认值为1 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    属性配置参数
                    
                            属性
                        
                        Configure
                        
                            说明
                        
                        设置属性Configure的值为JSON格式数据,配置各项参数,数据格式为:	
<param name="Configure" value='{"Common": [{"IsConRotate": "False","ShowMode": "3"}],"Render": [{"IsSimplityMode":"True","DrawDataBufferType":"1", "RemoveSize": "5","MeasureUnit": "0","IsShowPMI": "True","MsaaNum": "2","GLES": "2",BackgroundImagePath": ""}]"Layout": [{"MainMenu": "False","AssemblyTree": "True","ModelView": "True","ToolBar": "True"}]}'>
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| value | 是 | 为JSON格式数据,配置属性参数 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    背景颜色
                    
                            方法
                        
                        void SetBackgroundColor(SHORT viewID, BSTR topColor, BSTR bottomColor)
                        
                            说明
                        
                        设置控件背景的顶部颜色和底部颜色
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| topColor | 是 | 为顶部颜色 | 
| bottomColor | 是 | 为底部颜色 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        颜色为十六进制颜色字符串颜色,示例"0x0000ff"
                    布局配置
                    
                            方法
                        
                        void SetConfig(BSTR configJson)
                        
                            说明
                        
                        外部通过JSON文件配置,JSON文件格式:
                        
{
    "Layout": [
        {
            "MainMenu": "False",
            "AssemblyTree": "True",
            "ModelView": "True",
            "ToolBar": "True",
            "TreeNodeVisible": "True",
            "AutoLeftToolbarWith": "True",
            "LeftToolbarWith": "180"
        }
    ]
}
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| AssemblyTree | 是 | 值: True/False:显示/隐藏装配树面板(设置装配树面板的显隐,默认值为True | 
| ModelView | 是 | 值:True/False:显示/隐藏视图面板(设置装视图面板的显隐,默认值为True) | 
| MainMenu | 是 | 值: True/False:显示/隐藏主工具栏(设置工具栏的显隐,默认值为True) | 
| ToolBar | 是 | 值:True/False:显示/隐藏主命令工具栏(设置命令工具栏的显隐,默认值为True) | 
| TreeNodeVisible | 是 | 值:True/False:启用/禁用装配树节点选择控制模型显隐(设置装配树节点对模型显隐是否可控,默认值为True) | 
| AutoLeftToolbarWith | 是 | 值:True/False:自动适应/固定默认设置装配树面板和视图面板的宽度(设置树控件宽度是否自动,默认值为True) | 
| LeftToolbarWith | 是 | 值:int整数:设置装配树面板和视图面板的固定宽度,仅仅在AutoLeftToolbarWith设置为False时起作用(设置树控件默认宽度,默认值为180) | 
| LeftToolMettingButton | 是 | 值:True/False:显示/隐藏会议功能按钮 | 
| LeftToolVrButton | 是 | 值:True/False:显示/隐藏VR功能按钮 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    布局配置
                    复位
                    
                            方法
                        
                        void Restore(SHORT viewID, BSTR shapeIDs, SHORT type)
                        
                            说明
                        
                        置模型恢复到初始化状态
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| shapeIDs | 是 | 模型唯一标识(见备注),如果为整个模型则为"All",如果为单个或多个则用svlPath | 
| type | 是 | 默认为0 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
                    全屏
                        
                                方法
                            
                            void FullScreen(VARIANT_BOOL isFullScreen)
                            
                                说明
                            
                           设置模型显示窗口全屏显示
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| isFullScreen | 是 | True/False:全屏/关闭全屏 | 
                                返回值
                            
                            void
                            
                                备注
                            
                            无
                        拾取
                    
                            方法
                        
                        void SetModelSelected(BSTR svlPath, VARIANT_BOOL selected)
                        
                            说明
                        
                        设置模型的选中/取消选中
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识(见备注) | 
| selected | 是 | True/False:拾取/不拾取 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
                    聚焦显示
                    
                            方法
                        
                        void FocusModel(BSTR svlPath)
                        
                            说明
                        
                        设置模型聚焦显示
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识 示例"PATH|0|3|2|3" | 
                            返回值
                        
                        void
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
                    保存截图
                    
                            方法
                        
                        void TakeScreenPicture(BSTR savePath)
                        
                            说明
                        
                        保存模型展示截图
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| savePath | 是 | 截图保存的路径 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    鼠标右键点击事件
                    
                            事件
                        
                        OnRightMouseDownEvent(locationX,locationY)
                        
                            说明
                        
                        点击鼠标右键会触发此事件,把鼠标的位置坐标分为X值和Y值作为返回值传递
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| locationX | 是 | 鼠标位置X值 | 
| locationY | 是 | 鼠标位置Y值 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    模型复原事件
                    
                            事件
                        
                        OnRestoreViewEvent(restoreViewInfo)
                        
                            说明
                        
                        点击复原按钮对模型进行复原处理时,会触发此事件
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| restoreViewInfo | 是 | 暂无内容传值 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    模型选中事件
                    
                            事件
                        
                        OnModelSelectedChanged(svlPath,isSelected)
                        
                            说明
                        
 进行选中模型操作时会触发此事件,把选中模型的svlPath和选中状态进行回传。点击装配树中模型进行选中操作也会触发此事件,把选中模型的svlPath和选中状态进行回传。
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 选中模型的svlPath | 
| isSelected | 是 | 模型选中状态 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    模型预选事件
                    
                            事件
                        
                        OnModelPreSelectChanged(svlPath,isSelected)
                        
                            说明
                        
                        进行预选模型操作时会触发此事件,把预选模型的svlPath和预选状态进行回传
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 预选模型的svlPath | 
| isSelected | 是 | 预选模型状态 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    控件加载完成事件
                    
                            事件
                        
                        OnLoaded(loadInfo)
                        
                            说明
                        
                        OCX控件加载完成后会触发此事件
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| loadInfo | 是 | 暂无内容传值 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    模型加载完成事件
                    
                            事件
                        
                        OnFileLoadEndEvent(fileLoadInfo)
                        
                            说明
                        
                        模型加载完成之后会触发此事件
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| fileLoadInfo | 是 | 暂无内容传值 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    鼠标左键点击事件
                    
                            事件
                        
                        OnLeftMouseDownEvent(locationX,locationY)
                        
                            说明
                        
                        点击鼠标左键会触发此事件,把鼠标的位置坐标分为X值和Y值作为返回值传递
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| locationX | 是 | 鼠标位置X值 | 
| locationY | 是 | 鼠标位置Y值 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    模型属性
                    显示、隐藏
                    
                            方法
                        
                        void ModelSetVisible(SHORT viewID, BSTR modelID, SHORT type, VARIANT_BOOL visible)
                        
                            说明
                        
                        设置模型的显示或隐藏
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| modelID | 是 | 模型唯一标识(见备注) | 
| type | 是 | 1 为隐藏/显示模型, 2 为隐藏/显示文本批注 | 
| visible | 是 | True/False:显示/隐藏 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        modelID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开,例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
                    显示、隐藏(不会被复原)
                    
                            方法
                        
                        SetModelInitVisible(BSTR svlPath, VARIANT_BOOL visible)
                        
                            说明
                        
                        设置模型的显示或隐藏,进行复原操作后,不会被复原
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识 | 
| visible | 是 | True/False:显示/隐藏 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";;"分隔开,例如:"PATH|0|3|2|3;;PATH|0|17|6;;PATH|0|2"
                    颜色
                    
                            方法
                        
                        void SetModelColor(BSTR svlPath, BSTR colorStr)
                        
                            说明
                        
                        设置模型颜色
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识 | 
| colorStr | 是 | 十六进制颜色字符串颜色,示例"0x0000ff" | 
                            返回值
                        
                        void
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开,例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
                    获取模型内部标识
                        
                                方法
                            
                            BSTR GetModelPathByName(BSTR name)
                            
                                说明
                            
                            SView单个取得模型内部标识(返回多个内部标识,多个标识一起设定)
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| name | 是 | 模型零件名称 | 
                                返回值
                            
                            | 返回值类型 | 是否必须 | 说明 | 
|---|---|---|
| BSTR | 是 | 返回多个内部标识,多个标识一起设定 | 
                                备注
                            
                            无
                        获取模型名称
                        
                                方法
                            
                            BSTR GetModelNameByPath(BSTR svlPath)
                            
                                说明
                            
                            通过svlPath获取模型名称;
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识 | 
                                返回值
                            
                                模型名称
                            
                                备注
                            
                            svlPath 示例"PATH|0|3|2|3",此svlPath只支持单个唯一标识处理;
                        获取模型部件路径(根据坐标值)
                        
                                方法
                            
                            BSTR PickShape(FLOAT x,FLOAT y,SHORT pickType);
                            
                                说明
                            
                            通过坐标点获取模型部件的路径;
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| x | 是 | x代表当前鼠标点的横向坐标值。 | 
| y | 是 | y代表当前鼠标点的竖向坐标值。 | 
| pickType | 是 | pickShape代表模型选中类型,默认为4。 | 
                                返回值
                            
                                模型部件路径
                            
                                备注
                            
							无
							获取选中模型路径
                        
                                方法
                            
                            BSTR GetSelectedModels(SHORT viewID)
                            
                                说明
                            
                            获取选中模型的svlPath
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
                                返回值
                            
                                选中模型的svlPath
                            
							备注
                            
							svlPath  如果为多个用逗号隔开,例如:PATH|0|3|2|3,PATH|0|17|6,PATH|0|2
							获取模型属性
                        
                                方法
                            
                            BSTR ModelGetProperty(SHORT viewID, BSTR modelID, BSTR name)
                            
                                说明
                            
                            根据模型路径svlPath获取模型属性
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| modelID | 是 | 模型路径svlPath(见备注) | 
| name | 是 | 默认为All | 
                                返回值
                            
                                选中模型的svlPath
                            
							备注
                            
							svlPath  如果为多个用逗号隔开,例如:PATH|0|3|2|3,PATH|0|17|6,PATH|0|2
							视图浏览
                    视图浏览
                    
                            方法
                        
                        void SetPerspective(SHORT viewID,SHORT viewType)
                        
                            说明
                        
基本视图浏览:前视图、俯视图、仰视图、左视图、右视图、后视图、轴测图,设置不同方位展示模型
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| viewType | 是 | 0前视图 1后视图 2右视图 3左视图 4仰视图 5俯视图 6轴视图 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    设置透明度
                    
                            方法
                        
                        void SetAlpha(SHORT viewID, BSTR shapeID, FLOAT alpha)
                        
                            说明
                        
                        根据shapeID和透明度的值来设置模型透明度,percentage透明度,值为0~1之间
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| shapeID | 是 | 模型唯一标识(见备注) | 
| alpha | 是 | 设置模型的透明度,值为0~1之间,0为透明1为实体 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        shapeID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
                    设置高亮
                    
                            方法
                        
                        void Highlight(SHORT viewID, BSTR shapeID,VARIANT_BOOL highlight)
                        
                            说明
                        
                        根据shapeID模型标识,highlight是否高亮来设置高亮
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| shapeID | 是 | 模型唯一标识(见备注) | 
| highlight | 是 | 是否高亮显示,True/False高亮/不高亮 | 
                            返回值
                        
                        void
                        
                            备注
                        
                       shapeID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2";
                    获取模型是否高亮
                    
                            方法
                        
                        bool GetHighlightState(BSTR svlPath)
                        
                            说明
                        
                        根据svlPath来获取模型是否高亮;
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 模型唯一标识 | 
                            返回值
                        
                         True/False 高亮/不高亮
                        
                            备注
                        
                        svlPath 示例"PATH|0|3|2|3",此svlPath只支持单个唯一标识处理;
                    视图创建
                    
                            方法
                        
                        SHORT ModelViewCreate(SHORT viewID)
                        
                            说明
                        
                        创建视图
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
                            返回值
                        
                         视图ID
                        
                            备注
                        
						无
                    视图切换
                    
                            方法
                        
                        void ShowModelView(SHORT viewID, SHORT modelViewID)
                        
                            说明
                        
                        根据视图ID切换视图
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| modelViewID | 是 | 视图ID | 
                            返回值
                        
                         无
                        
                            备注
                        
						无
                    视图序列化
                    
                            方法
                        
                        BSTR ModelViewToJson(SHORT viewID, BSTR modelViewID)
                        
                            说明
                        
                        根据视图ID序列化生成视图Json数据
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| modelViewID | 是 | 视图ID,为All则获取全部视图,多个modelViewID用逗号隔开,例如:1001,1002,1003,1004 | 
                            返回值
                        
                         视图json数据
                        
                            备注
                        
						无
                    视图反序列化
                    
                            方法
                        
                        BSTR ModelViewFromJson(SHORT viewID, BSTR jsonStr)
                        
                            说明
                        
                        根据视图Json数据生成视图
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| jsonStr | 是 | 视图Json数据 | 
                            返回值
                        
                         视图ID,多个ID用逗号隔开,例如:1001,1002,1003,1004
                        
                            备注
                        
						无
                    渲染模式
                    
                            方法
                        
                        void SetViewParameter(SHORT viewID, BSTR  name, BSTR value)
                        
                            说明
                        
着色模式、边着色模式、线框模式、半透明模式、显示包围盒、显示网格
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| name | 是 | 渲染模式name的值为"drawmode" | 
| value | 是 | value 的值为需要设置的模式: 0着色模式、1半透明模式、3线框模式、4边着色模式、5显示网格、6取消半透明模式、7显示/取消显示包围盒 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    操作配置
                    多选
                    
                            方法
                        
                        void SetMultiSelect(bool isMultiSelect)
                        
                            说明
                        
                        设置模型是否多选
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| isMultiSelect | 是 | True/False:使用/不使用多选 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    指定旋转
                    
                            方法
                        
                        void SetDesignatedRotation(bool isDesignatedRotation)
                        
                            说明
                        
                        设置模型是否指定旋转
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| isDesignatedRotation | 是 | True/False:使用/不使用指定旋转 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    显示属性
                    
                            方法
                        
                        void PropertySwitch(VARIANT_BOOL isOpen);
                        
                            说明
                        
                        设置模型属性列表显示隐藏
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| isOpen | 是 | True/False:显示/隐藏属性列表 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    设置属性内容
                        
                                方法
                            
                            void ModifyAddProperties(BSTR propertiesStr);
                            
                                说明
                            
                            设置模型属性列表内容
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| propertiesStr | 是 | 参数格式: 属性名称::属性内容 多条属性内容用;;隔开。第一项为标题内容,无需添加::。清除属性列表内容直接输入''空字符串即可; | 
                                返回值
                            
                            void
                            
                                备注
                            
                            例如:12_sldprt;;ID::4;;PlaceID::0;;ProtoTypeID::1;;颜色::0.800,0.800,0.800,1.000;;子模型数量::0;;实例数量::0;;视图数量::11;;PMI数量::0;;LOD0 面片数量::2436;;LOD1 面片数量::0
                        预选显示属性
                        
                                方法
                            
                            void OnModelPreSelectChanged(BSTR svlPath,VARIANT_BOOL isSelected);
                            
                                说明
                            
                            设置模型属性列表内容
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| svlPath | 是 | 选择的模型零件路径 | 
| isSelected | 是 | True/False:选中/取消选中 | 
                                返回值
                            
                            void
                            
                                备注
                            
                            无
                        获取摄像机状态值
                        
                                方法
                            
                            BSTR OnGetCameraStates();
                            
                                说明
                            
                            获取摄像机状态值
                            
                                返回值
                            
                            | 返回值类型 | 是否必须 | 说明 | 
|---|---|---|
| BSTR | 是 | 返回值是Json类型的字符串。例如{"positon":"0 0 0","rotate":"1 1 1","zoom":"1 1 1"}。position、rotate、zoom分别代表平移、旋转、缩放的状态值。 | 
                                参数
                            
                            无
                            
                                备注
                            
                            无
                        设置摄像机状态值
                        
                                方法
                            
                            void SetCameraStates(LPCTSTR states);
                            
                                说明
                            
                            设置摄像机状态值
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| states | 是 | 参数是Json格式的字符串。例如{"positon":"0 0 0","rotate":"1 1 1","zoom":"1 1 1"}。position、rotate、zoom分别代表平移、旋转、缩放的状态值。 | 
                                返回值
                            
                            void
                            
                                备注
                            
                            无
                        鼠标悬停事件开关
                        
                                方法
                            
							void SetMoseHover(VARIANT_BOOL isHover);
                            
                                说明
                            
                            鼠标悬停事件开关
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| isHover | 是 | True/False:选中/取消选中。 | 
                                返回值
                            
                            void
                            
                                备注
                            
                            无
                        鼠标悬停事件
                        
                                方法
                            
                            void OnMouseHoverEvent(LPCTSTR locationX,LPCTSTR locationY);
                            
                                说明
                            
                            鼠标悬停事件
                            
                                参数
                            
                            | 参数 | 是否必须 | 说明 | 
|---|---|---|
| locationX | 是 | 参数locationX是鼠标悬停时,屏幕坐标x的值。 | 
| locationY | 是 | 参数locationY是鼠标悬停时,屏幕坐标y的值。 | 
                                返回值
                            
                            void
                            
                                备注
                            
                            无
                        剖切
                    剖切
                    
                            方法
                        
                        void multiClip(SHORT viewID, BSTR paramJson)
                        
                            说明
                        
                        基于坐标平面创建剖面,可调节剖切深度,展示剖切面内容
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| position | 是 | viewID传默认值0,paramJson为json格式数据: { "ClipParameter": { "directionX": "1", "positionX": "50", "directionY": "0", "positionY": "50", "directionZ": "0", "positionZ": "50", "showClipPlane": "True", "showCutPlane": "True", "reverseClip": "False" } } directionX 为沿X轴剖切(1为沿X轴正方向,-1为X轴负方向,0为X轴不剖切) positionX 沿X轴剖切深度(0~100) directionY 沿Y轴剖切(1为沿Y轴正方向,-1为Y轴负方向,0为Y轴不剖切) positionY 沿Y轴剖切深度(0~100) directionZ 沿Z轴剖切(1为沿Z轴正方向,-1为Z轴负方向,0为Z轴不剖切) positionZ 沿Y轴剖切深度(0~100) showClipPlane 是否显示示意面 显示为True,不显示为False showCutPlane 是否显示盖面 显示为True,不显示为False reverseClip 是否反向剖切 显示为True,不显示为False | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    关闭剖切
                    
                            方法
                        
                        void CancelClip(SHORT viewID)
                        
                            说明
                        
                        关闭模型的剖切展示
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    爆炸图
                    爆炸图
                    
                            方法
                        
                        void Explosive(SHORT viewID, BSTR explosiveParamJson)
                        
                            说明
                        
                        展示模型爆炸效果
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
| explosiveParamJson | 是 | paramJson为json格式数据: { "ExplosiveParameter": { "type": "1", "position": "50" } } type 0为沿离中心点,1为左右爆炸,2为上下爆炸 position 爆炸位置为0~100 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    关闭爆炸图
                    
                            方法
                        
                        CancelExplosive(SHORT viewID)
                        
                            说明
                        
                        关闭模型的爆炸展示
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    动画
                    开始
                    
                            方法
                        
                        void AnimationPlay()
                        
                            说明
                        
                        开始播放模型的动画文件或者播放暂停的动画文件
                        
                            参数
                        
                        无
                        
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    暂停
                    
                            方法
                        
                        void AnimationPause()
                        
                            说明
                        
                        暂停模型动画文件的播放
                        
                            参数
                        
                        无
                        
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    继续
                    
                            方法
                        
                        void AnimationContinue()
                        
                            说明
                        
                        继续播放模型的动画文件
                        
                            参数
                        
                        无
                        
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    是否重复播放
                    
                            方法
                        
                        bool AnimationLoop(bool loop)
                        
                            说明
                        
                        设置模型动画文件的重复播放
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| loop | 是 | true,循环播放;false 不循环 | 
                            返回值
                        
                        bool
                        
                            备注
                        
                        无
                    设置速度
                    
                            方法
                        
                        void AnimationSetSpeed(float speed)
                        
                            说明
                        
                        设置动画播放速度
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| speed | 是 | 1-10倍速播放 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    播放指定段
                    
                            方法
                        
                        void AnimationPlayRange(int startId, int endId)
                        
                            说明
                        
                        设置动画播放速度
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| startId | 是 | 开始id | 
| endId | 是 | 结束id | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    打开动画文件
                    
                            方法
                        
                        void AnimationOpenFile(String animationFilePath)
                        
                            说明
                        
                        打开模型动画文件
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| animationFilePath | 是 | 动画文件路径 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    关闭动画
                    
                            方法
                        
                        void AnimationClose()
                        
                            说明
                        
                        关闭动画播放
                        
                            参数
                        
                        无
                        
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    批注
                打开批注工具栏
                
                        方法
                    
                    VARIANT_BOOL ShowToolbar(BSTR toolbarName, VARIANT_BOOL visible)
                    
                        说明
                    
                    打开手绘、文本、编辑、删除批注工具栏
                    
                        参数
                    
                    | 参数 | 是否必须 | 说明 | 
|---|---|---|
| toolbarName | 是 | 工具栏名称为:NoteBar | 
| visible | 是 | 显示/隐藏 True为显示,False为隐藏 | 
                        返回值
                    
					无
                    
                        备注
                    
                    无
                文本批注序列化
                
                        方法
                    
                    BSTR NoteToJson(BSTR noteIDs)
                    
                        说明
                    
                    根据批注ID,文本批注序列化成Json数据
                    
                        参数
                    
                    | 参数 | 是否必须 | 说明 | 
|---|---|---|
| noteIDs | 是 | 文本批注ID,All为获取全部文本批注,多个ID用逗号隔开,例如:55410,55411,55412 | 
                        返回值
                    
					为json格式数据
                    
                        备注
                    
                    无
                文本批注反序列化
                
                        方法
                    
                    BSTR NoteFromJson(BSTR jsonStr)
                    
                        说明
                    
                    根据批注Json数据反序列化生成文本批注
                    
                        参数
                    
                    | 参数 | 是否必须 | 说明 | 
|---|---|---|
| jsonStr | 是 | 文本批注Json数据 | 
                        返回值
                    
					文本批注ID,多个ID用逗号隔开,例如:55410,55411,55412
                    
                        备注
                    
                    无
                测量
                打开测量命令
                    
                            方法
                        
                        SHORT DoCommand(BSTR commandJson)
                        
                            说明
                        
                        打开测量命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: 
									   
									   {"CommandName":"CreateMeasureDistance","Parameters":{"type":"1"}}
									   
                                       CreateMeasureDistance 为距离测量命令名称 type 为测量类型 1为点点测量 2为点面测量 3为面面测量 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    关闭测量命令
                    
                            方法
                        
                        int DoCommand(string commandJson)
                        
                            说明
                        
                        关闭测量命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: 
									   
									    {"CommandName":"CloseCommand","Parameters":{"Name":"CreateMeasureDistance"}
									   
                                       CommandName 为CloseCommand关闭命令名称 Name 为CreateMeasureDistance测量命令名称 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    漫游
                打开漫游命令
                    
                            方法
                        
                        SHORT DoCommand(BSTR commandJson)
                        
                            说明
                        
                        打开漫游命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: { "CommandName":"OpenWalkThrough", "Parameters": { "Type":"0", "WalkThroughSpeed":"1", "UpDirection":"2", "CameraFov":"70", } } OpenWalkThrough 打开漫游命令名称 Type 默认值为0 WalkThroughSpeed 漫游速度为0.25~6 UpDirection 向上方向,0为X轴正方向,1为X轴负方向,2为Y轴正方向,3为Y轴负方向,4位Z轴正方向,5位Z轴负方向 CameraFov 视野大小.20~150 | 
                            返回值
                        
                        True/False 打开成功/不成功
                        
                            备注
                        
                        无
                    关闭漫游命令
                    
                            方法
                        
                        SHORT DoCommand(BSTR commandJson)
                        
                            说明
                        
                        关闭漫游命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: 
									   
									    {"CommandName":"CloseCommand","Parameters":{"Name":"CreateMeasureDistance"}
									   
                                       CommandName 为CloseCommand关闭命令名称 Name 为OpenWalkThrough漫游命令名称 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    选择移动
                打开选择移动命令
                    
                            方法
                        
                        SHORT DoCommand(BSTR commandJson)
                        
                            说明
                        
                        打开选择移动命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: 
									   
									   {"CommandName":"OpenSelectedMove","Parameters":{"type":"0"}}
									   
                                       OpenSelectedMove 为距离测量命令名称 type 默认为0 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    关闭选择移动命令
                    
                            方法
                        
                        int DoCommand(string commandJson)
                        
                            说明
                        
                        关闭选择移动命令
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| commandJson | 是 | commandJson为json格式数据: 
									   
									    {"CommandName":"CloseCommand","Parameters":{"Name":"OpenSelectedMove"}
									   
                                       CommandName 为CloseCommand关闭命令名称 Name 为OpenSelectedMove选择移动命令名称 | 
                            返回值
                        
                        void
                        
                            备注
                        
                        无
                    装配树
                装配树序列化
                    
                            方法
                        
                        BSTR BomToJson(SHORT viewID)
                        
                            说明
                        
                        把装配树序列化成Json数据
                        
                            参数
                        
                        | 参数 | 是否必须 | 说明 | 
|---|---|---|
| viewID | 是 | 视口ID默认为0 | 
                            返回值
                        
装配树Json数据,Children为子装配树组,如果没有则为空。Name为装配名称。Guid为属性的GUID(如果属性值中有此属性)。SvlPath为装配的svlPath。ParentSvlPath为父装配的svlPath
                        
                            备注
                        
                        无